package com.android.boncen.commonFrame;

import android.app.AlarmManager;
import android.app.Application;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.widget.ImageView;



import org.xutils.common.util.DensityUtil;
import org.xutils.image.ImageOptions;
import org.xutils.x;

import cn.bmob.v3.Bmob;

/**
 * Created by Boncen on 2017/1/24.
 */

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        //第一：默认初始化
        Bmob.initialize(this, "13ebae5990328be5e9c79f6d4de6a3a8");

        //初始化XUtils
        x.Ext.init(this);
        //设置debug模式
        x.Ext.setDebug(true);

//        ok 1.记录页面左上角个人中心，那里面显示最近血糖情况（过高过低正常的次数），
//        2. 以及我的医生（显示我收藏过的医生）
//        3.血糖历史
//        4.咨询记录
//       ok 5.提醒：设置成两小时后提醒，以通知的方式，点击该通知，跳转到应用的记录页面，如果用户再次点击提醒，提示已经设置，是否重新设置或者取消提醒
//
//       ok 6.记录页面下的今日血糖概况，没什么好说，就是今日添加的血糖显示在下面，次日清空
//
//       OK 4.医生
    }
public static ImageOptions getImageOptions()
{
    return new ImageOptions.Builder()
            .setSize(DensityUtil.dip2px(120), DensityUtil.dip2px(120))//图片大小
            .setRadius(DensityUtil.dip2px(5))//ImageView圆角半径
            .setCrop(true)// 如果ImageView的大小不是定义为wrap_content, 不要crop.
            .setImageScaleType(ImageView.ScaleType.CENTER_CROP)
            .setLoadingDrawableId(R.mipmap.ic_launcher)//加载中默认显示图片
            .setFailureDrawableId(R.mipmap.ic_launcher)//加载失败后默认显示图片
            .build();
}
    /**
     * 设定提醒
     *
     * @param context
     */
    public static void setAlarm(Context context) {

        AlarmManager aManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
        // 注册AlarmManager的定时服务
        Intent intent = new Intent(context, NotificationService.class);
        intent.setAction("com.start.alarm");
        PendingIntent pi = PendingIntent.getService(context, 0x1008, intent,
                PendingIntent.FLAG_CANCEL_CURRENT);
        aManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+60*60*1000*2, pi);
    }

    /**
     * 取消提醒
     *
     * @param context
     */
    public static void cancelAlarm(Context context) {
        AlarmManager aManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
        // 取消AlarmManager的定时服务
        Intent intent = new Intent(context, NotificationService.class);
        intent.setAction("com.start.alarm");
        PendingIntent pi = PendingIntent.getService(context, 0x1008, intent,
                PendingIntent.FLAG_CANCEL_CURRENT);
        aManager.cancel(pi);
    }

    /***
     * 保存提示已经打开提醒
     *
     * @param isAlarm
     */
    public static void save(Context context, boolean isAlarm) {
        SharedPreferences.Editor preferences = context.getSharedPreferences("tzs", Context.MODE_PRIVATE).edit();
        preferences.putBoolean("isTs", isAlarm);
        preferences.commit();

    }

    /***
     * 保存提示打开提醒
     *
     */
    public static boolean isAlarm(Context context) {
        SharedPreferences preferences = context.getSharedPreferences("tzs", Context.MODE_PRIVATE);
        return preferences.getBoolean("isTs", false);

    }
}
